
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">

<HTML>

<HEAD>
   <TITLE>lparsm_c</TITLE>
</HEAD>

<BODY style="color: rgb(0, 0, 0); background-color: rgb(255, 255, 255);">
<A name="TOP"></A>

<table style="text-align: left; margin-left: auto; margin-right: auto; width: 800px;"
 border="0" cellpadding="5" cellspacing="2">
  <tbody>
    <tr>
      <td style="background-color: rgb(153, 153, 153); vertical-align: middle; text-align: center;">
      <div align="right"> 
      <small><small><a href="index.html">Index Page</a></small></small>
      </div>
      <b>lparsm_c</b> </td>
    </tr>

    <tr>
      <td style="vertical-align: top;">

<small><div align="center">
<A HREF="index.html#A">A</A>&nbsp;
<A HREF="index.html#B">B</A>&nbsp;
<A HREF="index.html#C">C</A>&nbsp;
<A HREF="index.html#D">D</A>&nbsp;
<A HREF="index.html#E">E</A>&nbsp;
<A HREF="index.html#F">F</A>&nbsp;
<A HREF="index.html#G">G</A>&nbsp;
<A HREF="index.html#H">H</A>&nbsp;
<A HREF="index.html#I">I</A>&nbsp;
<A HREF="index.html#J">J</A>&nbsp;
<A HREF="index.html#K">K</A>&nbsp;
<A HREF="index.html#L">L</A>&nbsp;
<A HREF="index.html#M">M</A>&nbsp;
<A HREF="index.html#N">N</A>&nbsp;
<A HREF="index.html#O">O</A>&nbsp;
<A HREF="index.html#P">P</A>&nbsp;
<A HREF="index.html#Q">Q</A>&nbsp;
<A HREF="index.html#R">R</A>&nbsp;
<A HREF="index.html#S">S</A>&nbsp;
<A HREF="index.html#T">T</A>&nbsp;
<A HREF="index.html#U">U</A>&nbsp;
<A HREF="index.html#V">V</A>&nbsp;
<A HREF="index.html#W">W</A>&nbsp;
<A HREF="index.html#X">X</A>&nbsp;
</div></small>
       <br>
       <table style="text-align: left; width: 60%; margin-left: auto; margin-right: auto;"
       border="0" cellspacing="2" cellpadding="2">
        <tbody>
          <tr>
            <td style="width: 50%; text-align: center;">
            <small>
              <a href="#Procedure">Procedure<br></a>
              <a href="#Abstract">Abstract<br></a>
              <a href="#Required_Reading">Required_Reading<br></a>
              <a href="#Keywords">Keywords<br></a>
              <a href="#Brief_I/O">Brief_I/O<br></a>
              <a href="#Detailed_Input">Detailed_Input<br></a>

              </small>
              </td>
              <td style="vertical-align: top; width: 50%; text-align: center;">
              <small>               <a href="#Detailed_Output">Detailed_Output<br></a>
              <a href="#Parameters">Parameters<br></a>
              <a href="#Exceptions">Exceptions<br></a>
              <a href="#Files">Files<br></a>
              <a href="#Particulars">Particulars<br></a>
              <a href="#Examples">Examples<br></a>

              </small>
              </td>
              <td style="vertical-align: top; width: 50%; text-align: center;">
              <small>               <a href="#Restrictions">Restrictions<br></a>
              <a href="#Literature_References">Literature_References<br></a>
              <a href="#Author_and_Institution">Author_and_Institution<br></a>
              <a href="#Version">Version<br></a>
              <a href="#Index_Entries">Index_Entries<br></a>
             </small>
            </td>
          </tr>
        </tbody>
</table>

<h4><a name="Procedure">Procedure</a></h4>
<PRE>
   void lparsm_c ( ConstSpiceChar   * list,
                   ConstSpiceChar   * delims,
                   SpiceInt           nmax,
                   SpiceInt           lenout,
                   SpiceInt         * n,
                   void             * items   ) 

</PRE>
<h4><a name="Abstract">Abstract</a></h4>
<PRE>
 
   Parse a list of items separated by multiple delimiters. 
 </PRE>
<h4><a name="Required_Reading">Required_Reading</a></h4>
<PRE>
 
   None. 
 </PRE>
<h4><a name="Keywords">Keywords</a></h4>
<PRE>
 
   CHARACTER,  LIST,  PARSING,  STRING 
 

</PRE>
<h4><a name="Brief_I/O">Brief_I/O</a></h4>
<PRE>
 
   VARIABLE  I/O  DESCRIPTION 
   --------  ---  -------------------------------------------------- 
   list       I    List of items delimited by delims. 
   delims     I    Single characters which delimit items. 
   nmax       I    Maximum number of items to return. 
   lenout     I    Length of strings in item array.
   n          O    Number of items in the list. 
   items      O    Items in the list, left justified. 
 </PRE>
<h4><a name="Detailed_Input">Detailed_Input</a></h4>
<PRE>
 
   list        is a list of items delimited by any one of the
               characters in the string delims. Consecutive delimiters,
               and delimiters at the beginning and end of the list, are
               considered to delimit empty items. A blank or empty list
               is considered to contain a single, empty item.  Leading
               and trailing blanks in list are ignored.
  
   delims      contains the individual characters which delimit
               the items in the list. These may be any ASCII
               characters, including blanks.

               However, by definition, consecutive blanks are NOT
               considered to be consecutive delimiters. Nor are
               a blank and any other delimiter considered to be
               consecutive delimiters.  

   nmax        is the maximum number of items to be returned from the
               list. This allows the user to guard against overflow
               from a list containing more items than expected.

   lenout      is the declared length of the strings in the string 
               array items.  This length must include room for the
               terminating null character in each string.
</PRE>
<h4><a name="Detailed_Output">Detailed_Output</a></h4>
<PRE>
 
   n           is the number of items in the list. n may be any number
               between one and nmax.

   items       is an array of strings containing the items in the list,
               left justified. Any item in the list too long to fit into 
               an element of items is truncated on the right.  Empty
               (null) or blank items in the input string are mapped to
               empty strings on output.

               items should be declared by the caller as:

                  SpiceChar items [nmax][lenout]
</PRE>
<h4><a name="Parameters">Parameters</a></h4>
<PRE>
 
   None. 
 </PRE>
<h4><a name="Exceptions">Exceptions</a></h4>
<PRE>
 
   1)  If nmax is less than one, then n will be set to zero, and no
       items will be returned.  This case is not an error.  The other
       exceptional cases can occur only if nmax &gt; 0.
       
   2)  The error SPICE(NULLPOINTER) is signaled if either of the input
       string pointers or the output void pointer is null.

   3)  If the output string length lenout is less than one, the error
       SPICE(STRINGTOOSHORT) will be signaled.
       
   4)  An empty input string will result in a single, empty output 
       token.  This case is not an error.
    </PRE>
<h4><a name="Files">Files</a></h4>
<PRE>
 
   None. 
 </PRE>
<h4><a name="Particulars">Particulars</a></h4>
<PRE>
 
   None. 
 </PRE>
<h4><a name="Examples">Examples</a></h4>
<PRE>
 
   The following examples illustrate the operation of <b>lparsm_c</b>. 

  1) Let 

        list   == &quot;  A number of words   separated   by spaces   &quot; 
        delims == &quot; &quot; 
        nmax   == 20 

     Then 

        items[0] == &quot;A&quot; 
        items[1] == &quot;number&quot; 
        items[2] == &quot;of&quot; 
        items[3] == &quot;words&quot; 
        items[4] == &quot;separated&quot; 
        items[5] == &quot;by&quot; 
        items[6] == &quot;spaces&quot; 



   2) Let 

         list   == &quot; ,bob,   carol,, ted,  alice&quot; 
         delims == &quot;,&quot; 
         nmax   == 4 

      Then 

         items[0] == &quot;&quot; 
         items[1] == &quot;bob&quot; 
         items[2] == &quot;carol&quot; 
         items[3] == &quot;&quot; 


   3) Let 

         list   == &quot;  1986-187// 13:15:12.184 &quot; 
         delims == &quot; ,/-:&quot; 
         nmax   == 20 

      Then 

         items[0] == &quot;1986&quot; 
         items[1] == &quot;187&quot; 
         items[2] == &quot;&quot; 
         items[3] == &quot;13&quot; 
         items[4] == &quot;15&quot; 
         items[5] == &quot;12.184&quot; 
 </PRE>
<h4><a name="Restrictions">Restrictions</a></h4>
<PRE>
 
   None. 
 </PRE>
<h4><a name="Literature_References">Literature_References</a></h4>
<PRE>
 
   None. 
 </PRE>
<h4><a name="Author_and_Institution">Author_and_Institution</a></h4>
<PRE>
 
   N.J. Bachman    (JPL)
   I.M. Underwood  (JPL) 
 </PRE>
<h4><a name="Version">Version</a></h4>
<PRE>
 
   -CSPICE Version 1.0.0, 18-AUG-2002 (NJB) (IMU)
</PRE>
<h4><a name="Index_Entries">Index_Entries</a></h4>
<PRE>
 
   parse a list of items 
 </PRE>
<h4>Link to routine lparsm_c source file <a href='../../../src/cspice/lparsm_c.c'>lparsm_c.c</a> </h4>

      </td>
    </tr>
  </tbody>
</table>

   <pre>Wed Jun  9 13:05:26 2010</pre>

</body>
</html>

